package com.plugin.core.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 长者健康检查异常记录表
 * 
 * @author mark
 * @date 2025-07-26
 */
@Data
@TableName("elder_health_check_exception")
@Schema(description = "长者健康检查异常记录")
public class ElderHealthCheckException {

    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    @Schema(description = "主键ID", example = "1")
    private Long id;

    /**
     * 长者ID
     */
    @Schema(description = "长者ID", example = "1001")
    private Long elderId;

    /**
     * 床位号
     */
    @Schema(description = "床位号", example = "A101-01")
    private String bedNumber;

    /**
     * 楼栋
     */
    @Schema(description = "楼栋", example = "A栋")
    private String building;

    /**
     * 楼层
     */
    @Schema(description = "楼层", example = "1")
    private Integer floor;

    /**
     * 长者姓名
     */
    @Schema(description = "长者姓名", example = "张三")
    private String elderName;

    /**
     * 检查时间
     */
    @Schema(description = "检查时间", example = "2025-07-26 08:00:00")
    private LocalDateTime checkTime;

    /**
     * 异常类型
     */
    @Schema(description = "异常类型", example = "血压异常")
    private String exceptionType;

    /**
     * 异常描述
     */
    @Schema(description = "异常描述", example = "血压偏高，收缩压160mmHg")
    private String exceptionDesc;

    /**
     * 异常等级 (1-轻微 2-中等 3-严重)
     */
    @Schema(description = "异常等级 (1-轻微 2-中等 3-严重)", example = "2")
    private Integer exceptionLevel;

    /**
     * 检查项目
     */
    @Schema(description = "检查项目", example = "血压检查")
    private String checkItem;

    /**
     * 检查值
     */
    @Schema(description = "检查值", example = "160/90")
    private String checkValue;


    /**
     * 处理状态 (0-未处理 1-处理中 2-已处理)
     */
    @Schema(description = "处理状态 (0-未处理 1-处理中 2-已处理)", example = "0")
    private Integer handleStatus;

    /**
     * 处理时间
     */
    @Schema(description = "处理时间", example = "2025-07-26 09:30:00")
    private LocalDateTime handleTime;

    /**
     * 备注信息
     */
    @Schema(description = "备注信息", example = "需要持续观察血压变化")
    private String remarks;

    /**
     * 创建时间
     */
    @Schema(description = "创建时间", example = "2025-07-26 08:00:00")
    private LocalDateTime createTime;


    /**
     * 删除标记 (0-未删除 1-已删除)
     */
    @Schema(description = "删除标记 (0-未删除 1-已删除)", example = "0")
    private Integer del;
}
